<?php
declare(strict_types=1);

namespace app\common\business;

use app\common\lib\ClassArray;
use app\common\lib\Number;

class Sms
{
    public static function sendCode(string $phone, int $length, string $type = 'ali')
    {
        // 生成验证码
        $code  = Number::getCode($length);

        // 验证码发送
        // 根据 type 获取当前短信使用类库
        // $class = "app\common\lib\sms\\".ucfirst($type)."Sms";
        /*$class = ClassArray::initClass($type, 'smsClassStat');
        $sms   = $class::sendCode($phone, $code);*/
        $sms = true;

        // 判断是否发送成功，发送成功须在 redis 记录当前发送验证码及失效时间
        if ($sms && cache(config('redis.code.prefix').$phone, $code, config('redis.code.expire'))) {
            return $code;
        }
        return false;
    }
}